package com.jacobson.huobi.api

import com.jacobson.huobi.common.HttpAuthentication
import com.jacobson.huobi.entities.InvitedNumberInfo
import com.jacobson.huobi.entities.response.CommonResponse
import com.jacobson.huobi.entities.response.InviteUserPageResponse
import io.reactivex.Observable
import retrofit2.http.Headers
import retrofit2.http.POST
import retrofit2.http.Path
import retrofit2.http.Query

interface InviteUserListApi {
    @POST("shared/detail/{page}")
    @Headers(HttpAuthentication.HEADER)

    fun loadInviteUserList(
        @Path("page") page: Int,
        @Query("minInviteLevel") minInviteLevel: Int = 1,
        @Query("maxInviteLevel") maxInviteLevel: Int = 1
    ): Observable<InviteUserPageResponse>

    @POST("shared/shared_info")
    @Headers(HttpAuthentication.HEADER)
    fun getSharedInfo(): Observable<CommonResponse<InvitedNumberInfo>>
}